Embodiments of the present invention generally relate to communications and real-time collaboration, and more specifically to applying policies to such communications or collaboration.
For example, communications such as instant messaging (IM) provide real-time communications between users. IM provides a convenient way for a user to contact another user. When an IM session is initialized, users may communicate and interact in real time by sending messages using their IM clients.
Instant messaging is very convenient when users are active and connected to their IM clients. However, when a user is absent, current solutions that deal with the absent user are inadequate. A user in some IM systems has the ability to leave a status message when that user is connected to the IM system but away from the computer or otherwise unable or unwilling to respond to messages through the IM system. For example, when a user sets a status to away, idle, or any other non-active status, the IM client may respond to an instant message received for the user by sending a standardized message back to a sender, indicating the status of the user. These messages may be personalized by a user. However, these messages are sent just based on the presence of the user. The messages therefore only show or hide the presence of a user in a way that is consistent, using a global setting to specify how to handle every request received. For example, the system can be set to indicate to everyone or no one that the user is away using a single status attribute or permanent setting (such as never indicating that the user is away).
When a user is not connected the options typically are even more limited. For example, when a sender sends a message to a user that is offline, the sender can receive an error message or a message indicating that the intended recipient appears to be offline and may not receive the message, and/or the message can be buffered for possible delivery to the user when the user subsequently connects. Messages that are buffered may be inadvertently deleted when the user connects again, such as where the user shuts down when coming back to the computer or messaging device without checking the messages, or may not be delivered at all. Further, if the messages are important, there is no mechanism such that the user can be notified of the messages until the user logs on again, checks messages, or reconnects.